/*
Theme Name: One
Author: iSimplifyMe
Author URI: http://isimplifyme.com/
Description: A dynamic theme for iSimplifyMe clients.
Version: 1.0
License: GNU General Public License
License URI: license.txt

*/

/* =Variables
-------------------------------------------------------------- */

:root {
	--ismPadding10: clamp(5px, .76vw, 10px);
	--ismPadding20: clamp(10px, 1.53vw, 20px);
	--ismPadding30: clamp(15px, 2.29vw, 30px);
	--ismPadding40: clamp(20px, 3.06vw, 40px);
	--ismPadding60: clamp(30px, 4.61vw, 60px);
	--ismPadding80: clamp(40px, 6.12vw, 80px);
	--ismPadding100: clamp(60px, 7.69vw, 100px);
	--ismPadding120: clamp(60px, 9.22vw, 120px);
	--ismFont14: clamp(14px, 1.07vw, 14px);
	--ismFont16: clamp(12px, 1.23vw, 16px);
	--ismFont18: clamp(14px, 1.5vw, 18px);
	--ismFont20: clamp(16px, 1.53vw, 20px);
	--ismFont30: clamp(20px, 2.3vw, 30px);
	--ismFont40: clamp(24px, 3.06vw, 40px);
	--ismFont60: clamp(36px, 4.61vw, 60px);
	--ismFont70: clamp(40px, 5.38vw, 70px);
	--ismFont80: clamp(48px, 6.12vw, 80px);
}

/* =@font-face
-------------------------------------------------------------- */

@font-face {
  font-family: 'ISM Icons';
  src:  url('fonts/ism-icons.eot?3b3f1w');
  src:  url('fonts/ism-icons.eot?3b3f1w#iefix') format('embedded-opentype'),
    url('fonts/ism-icons.woff2?3b3f1w') format('woff2'),
    url('fonts/ism-icons.ttf?3b3f1w') format('truetype'),
    url('fonts/ism-icons.woff?3b3f1w') format('woff'),
    url('fonts/ism-icons.svg?3b3f1w#iSimplifyMe-Icons') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}


/* =Structure
-------------------------------------------------------------- */

* {
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	scroll-margin-top: calc(var(--ismPadding120) + var(--ismPadding60));
}
.infobar * {
	scroll-margin-top: calc(var(--ismPadding120) + var(--ismPadding60) + 40px);
}
.admin-bar * {
	scroll-margin-top: calc(var(--ismPadding120) + var(--ismPadding60) + 32px);
}
.admin-bar.infobar * {
	scroll-margin-top: calc(var(--ismPadding120) + var(--ismPadding60) + 73px);
}
html {
	height: 100%;
	scroll-behavior: smooth;
	font-size: var(--ismFont20);
}
body {
	height: 100%;
	margin: 0;
	overflow-x: hidden;
}
#page {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	padding-top: var(--ismPadding120);
}
.infobar #page {
	padding-top: calc(var(--ismPadding120) + 40px);
}
.admin-bar #page {
	padding-top: calc(var(--ismPadding120) + 32px);
}
.admin-bar.infobar #page {
	padding-top: calc(var(--ismPadding120) + 72px);
}
.error404 #page {
    padding-top: 0;
    height: 100vh;
    position: relative;
}
.masthead-overlay #page,
.admin-bar.masthead-overlay #page {
	padding-top: 0;
}
#img-404 {
    position: absolute;
    z-index: 0;
    width: 100%;
    height: 100%;
}
#img-404 img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#page-404-content {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: 100%;
    background-color: rgba(255,255,255,.75);
	text-align: center;
}
.masthead-dark #page-404-content {
    background-color: rgba(0,0,0,.5);
	color: #FFF;
}
#primary {
	width: 100%;
}
#page-404-content #primary {
    padding-bottom: var(--ismPadding30);
    margin: auto 0;
}
#content {
}
#main .widget-area {
}
h1 {
	font-size: var(--ismFont80);
}
h2 {
	font-size: var(--ismFont60);
}
h3 {
	font-size: var(--ismFont40);
}
h4 {
	font-size: var(--ismFont30);
}
h5 {
	font-size: var(--ismFont30);
}
h6 {
	font-size: var(--ismFont30);
}
h1, h2, h3, h4, h5, h6 {
    margin: var(--ismPadding80) auto var(--ismPadding60);
    line-height: 1;
}
p {
    margin: var(--ismPadding30) auto;
    line-height: 1.5;
}
ol, ul {
    margin: var(--ismPadding30) auto;
    line-height: 1.25;
}
ol li, ul li {
	margin-bottom: var(--ismPadding10);
}
a {
	color: #000;
	text-decoration-color: #ec1f28;
}
.entry-header > h1 {
    margin: 0 auto var(--ismPadding30);
	padding-top: 40px;
	text-align: center;
	text-wrap: balance;
}
.entry-header > h1,
.entry-content > h1,
.entry-content > h2,
.entry-content > h3,
.entry-content > h4,
.entry-content > h5,
.entry-content > h6,
.entry-content > p,
.entry-content > ul,
.entry-content > ol {
	width: calc(100% - var(--ismPadding60));
	max-width: 1300px;;
}
.entry-content > h1:first-child,
.entry-content > h2:first-child,
.entry-content > h3:first-child {
    margin: 0 auto var(--ismPadding60);
}
.entry-content {
}

/* Increase the size of the content area for templates without sidebars */
.full-width #content,
.image-attachment #content,
.error404 #content {
	margin: 0;
}

/* Text meant only for screen readers */
.screen-reader-text,
.assistive-text {
	position: absolute !important;
	clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
	clip: rect(1px, 1px, 1px, 1px);
}
.ism-social-links {
    font-family: 'ISM Icons';
    display: flex;
    flex-wrap: wrap;
    gap: 1.15em;
}
.entry-content > .wp-block-image {
    margin: var(--ismPadding60) auto;
	width: calc(100% - var(--ismPadding60));
	max-width: calc(1500px - var(--ismPadding60));
}
.wp-block-image img {
	display: block;
	margin: 0;
}
figcaption.wp-element-caption {
    margin: 0.5em 0 0;
    font-size: var(--ismFont16);
    text-align: right;
    font-style: italic;
}
.wp-block-cover.page-banner {
    min-height: min(500px, 40vw);
	padding: 4em 1em;
}
.masthead-overlay .wp-block-cover.page-banner {
	padding: calc(var(--ismPadding120) + 4em) 1em 4em;
}
.wp-block-media-text > .wp-block-media-text__content {
    padding: var(--ismPadding120) var(--ismPadding60) !important;
}
.masthead-overlay .wp-block-cover.page-banner :first-child {
	margin-top: 0;
}
.wp-block-columns {
    max-width: 1300px !important;
	width: calc(100% - var(--ismPadding60));
    margin: 0 auto;
    padding: var(--ismPadding30) 0;
	gap: var(--ismPadding40) !important;
}
.wp-block-columns.content-columns {
	max-width: 800px;
	padding: 0;
	width: calc(100% - var(--ismPadding60));
}
.wp-block-columns .wp-block-column :first-child {
    margin-top: 0;
}
.wp-block-media-text.testimonial-block {
    min-height: 35vw;
	font-size: 1.25em;
}
.wp-block-media-text.testimonial-block > .wp-block-media-text__content {
    padding: 4em 3em !important;
}
.wp-block-media-text.testimonial-block p {
	line-height: 1.75;
}
.wp-block-cover.cta-banner {
    min-height: 300px;
    padding: 4em 2em;
}
.wp-block-cover.cta-banner .wp-block-cover__inner-container {
    max-width: 800px;
    margin: 0 auto;
}
.wp-block-cover.cta-banner .wp-block-cover__inner-container :first-child {
	margin-top: 0;
}
.wp-block-columns.info-columns {
    padding: var(--ismPadding120) var(--ismPadding30);
    gap: var(--ismPadding100);
}
.wp-block-column.info-column {
    display: flex;
    flex-direction: column;
}
.wp-block-column.info-column * {
    margin-top: 0;
}
.wp-block-column.info-column figure.wp-block-image {
    position: relative;
    padding-top: 67%;
    margin-bottom: var(--ismPadding40);
}
.wp-block-column.info-column figure.wp-block-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	border-radius: .15em;
}
.wp-block-buttons {
    gap: var(--ismPadding40);
}
.wp-block-column.info-column .wp-block-buttons {
	margin-top: auto;
	padding-top: var(--ismPadding40);
}
#post-list {
    width: calc(100% - var(--ismPadding60));
    max-width: calc(1300px - var(--ismPadding60));
    margin: 4em auto;
    display: flex;
    gap: var(--ismPadding60);
	flex-wrap: wrap;
}
.post-list-item {
    width: calc(50% - var(--ismPadding30));
}
.post-list-item-inner {
    position: relative;
    padding-top: 80%;
	background-color: #000;
}
img.post-list-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    object-fit: cover;
}
.post-list-item-inner h2 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    margin: 0;
	font-size: 1.5rem
}
.post-list-item-inner a {
	color: #FFF;
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
    text-align: center;
	padding: 1em;
	text-decoration: none;
	background-color: rgba(0,0,0,.6);
}

/* Alignment */
.alignleft {
	display: inline;
	float: left;
}
.alignright {
	display: inline;
	float: right;
}
.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
}

#return-404-wrapper {
	margin-top: var(--ismPadding40);
}
#return-404-wrapper a {
    display: inline-block;
    font-weight: bold;
    color: #FFF;
    background-color: #000;
    text-decoration: none;
    font-size: var(--ismFont30);
    padding: var(--ismPadding30) var(--ismPadding40);
    border-radius: 0.15em;
    line-height: 1;
}
.masthead-dark #return-404-wrapper a {
    color: #000;
    background-color: #FFF;
}
.wp-block-embed-youtube {
    width: 100%;
    max-width: 1300px !important;
    margin: var(--ismPadding30) auto !important;
}
.wp-block-embed-youtube .wp-block-embed__wrapper {
    position: relative;
    padding-top: 56%;
}
.wp-block-embed-youtube .wp-block-embed__wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 700px) {
	.post-list-item {
		width: 100%;
	}
	.wp-block-media-text.testimonial-block.is-stacked-on-mobile {
		grid-template-columns: 100%!important;
	}
	.wp-block-media-text.testimonial-block.is-stacked-on-mobile .wp-block-media-text__content {
		padding: calc(var(--ismPadding80) * 2) 1em !important;
		grid-column: 1;
		grid-row: 2;
	}
	.wp-block-media-text.testimonial-block.is-image-fill .wp-block-media-text__media {
		grid-column: 1;
		grid-row: 1;
		min-height: 80vw;
	}
}


/* =Header
-------------------------------------------------------------- */

.branding {
	display: flex;
	padding: var(--ismPadding20);
	height: var(--ismPadding120);
	width: 100%;
	position: relative;
}
.infobar .branding {
	padding-top: calc(var(--ismPadding20) + 40px);
	height: calc(var(--ismPadding120) + 40px);
}
.branding a {
	text-decoration: none;
}
#masthead {
	background-color: #FFF;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
}
#masthead-404 {
    justify-content: center;
}
body.masthead-dark #masthead {
	background-color: #000;
}
body.masthead-overlay #masthead {
	background-color: transparent;
	transition: background-color .75s linear;
}
body.masthead-overlay #masthead.scrolled {
	background-color: rgba(255,255,255,.7);
}
body.masthead-overlay.masthead-dark #masthead.scrolled {
	background-color: rgba(0,0,0,.7);
}
body.masthead_dark_background:not(.masthead-overlay) #masthead {
	background-color: rgba(0,0,0,.7);
}
body.masthead-overlay #masthead {
	background-color: transparent;
}
.admin-bar #masthead {
	top: 32px;	
}
.masthead-infobar-outer {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	color: #FFF;
	background: #000;
	height: 40px;
	padding: 0 var(--ismPadding20);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
}
.masthead_dark_background .masthead-infobar-outer {
	color: #000;
	background: #FFF;
}
.masthead-infobar-outer p {
	margin: 0;
}
.site-title {
    display: block;
    margin: 0;
    height: 100%;
}
.site-title a {
    display: block;
    height: 100%;
}
.site-title a svg,
.site-title a img {
    height: 100%;
	width: auto;
    display: block;
}
.masthead-elements {
    display: flex;
    flex-direction: column;
    margin-left: auto;
    justify-content: right;
    text-align: right;
}
.mobile-phone-icon{
	fill: #FFFFFF;
}
a.mobile-menu-control {
    color: #000;
}
.masthead-dark a.mobile-menu-control#menu-open {
    color: #FFF;
}
.masthead-widget-area-wrapper {
    margin-bottom: auto;
}

@media screen and (max-width: 782px) {
	.admin-bar #masthead {
		top: 46px;
	}
}
@media only screen and (max-width:700px) {
	.masthead-elements {
		flex-direction: row;
		gap: var(--ismPadding30);
		height: 100%;
		align-items: center;
	}
	.masthead-widget-area-wrapper {
		margin: auto 0;
	}
}

/* =Menu
-------------------------------------------------------------- */

#access {
    display: block;
    margin: auto 0 0 auto;
    font-weight: bold;
    text-transform: uppercase;
}
#access ul {
	list-style: none;
	margin: 0;
	padding-left: 0;
	display: flex;
    font-size: var(--ismFont16);
	gap: 2em;
	align-items: center;
}
#access ul ::marker {
	content: '';
}
#access li {
	position: relative;
	margin: 0;
}
#access a {
    color: #000;
	display: block;
	line-height: 1;
	text-decoration: none;
	transition: color .5s;
}
body.masthead-dark #access a {
	color: #FFF;
}
#access ul ul {
	font-size: .8em;
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 99999;
    padding-top: var(--ismPadding20);
}
#access ul ul a {
	color: #FFF;
	text-align: left;
}
#access ul ul a:hover {
	color: #FFF;
}
#access ul li:hover > ul {
	display: block;
}
#access ul li > ul > li {
	white-space: nowrap;
    background-color: #000;
    padding: var(--ismPadding10) var(--ismPadding20);
}
#access ul li > ul > li:first-child {
    padding-top: var(--ismPadding20);
}
#access ul li > ul > li:last-child {
    padding-bottom: var(--ismPadding20);
}
#access ul ul :hover > a {
	color: #eaeaea;
}
a#megamenu-mobile-trigger,
a#megamenu-desktop-trigger {
    display: inline-flex;
    align-items: center;
    gap: .5em;
}
a#megamenu-desktop-trigger:after {
    content: '\e907';
    font-family: 'ISM Icons';
    font-size: .75em;
	transform: rotate(0deg);
	transition: transform ease .25s;
}
a#megamenu-desktop-trigger.open:after {
	transform: rotate(540deg);
}

a#megamenu-mobile-trigger:after {
    content: '\e904';
    font-family: 'ISM Icons';
    font-size: .75em;
}
.megamenu-destktop-outer {
	display: none;
    position: absolute;
    top: 100%;
    width: 100%;
    left: 0;
    padding: var(--ismPadding20);
    max-height: calc(100vh - var(--ismPadding120));
	background-color: #FFF;
    border-top: solid 1px #000;
	overflow-y: scroll;
}
.masthead_dark_background .megamenu-destktop-outer {
    border-top-color: #FFF;
	background-color: #000;
	color: #FFF;
}
.admin-bar .megamenu-destktop-outer {
    max-height: calc(100vh - (var(--ismPadding120) + 32px));
}
.infobar .megamenu-destktop-outer {
    max-height: calc(100vh - (var(--ismPadding120) + 40px));
}
.admin-bar.infobar .megamenu-destktop-outer {
    max-height: calc(100vh - (var(--ismPadding120) + 72px));
}
a#desktop-megamenu-close {
    position: absolute;
    top: var(--ismPadding20);
    right: var(--ismPadding20);
    font-family: 'ISM Icons';
    font-size: 1em;
}
.mobile-menu-control {
  font-family: 'ISM Icons';
}
a#menu-open {
    display: none;
}
#mobile-nav {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    z-index: 1000;
	margin-left: 100%;
    background-color: #FFF;
    width: 100%;
	transition: margin-left .5s;
}
.admin-bar #mobile-nav {
	top: 46px;
}
.nav-open #mobile-nav {
	margin-left: 0;
}
#mobile-access {
    height: calc(100vh - var(--ismPadding120));
	position: relative;
	overflow-y: scroll;
}
.admin-bar #mobile-access {
    height: calc(100vh - (var(--ismPadding120) + 32px));
}
.infobar #mobile-access {
    height: calc(100vh - (var(--ismPadding120) + 40px));
}
.admin-bar.infobar #mobile-access {
    height: calc(100vh - (var(--ismPadding120) + 72px));
}
#mobile-access ul {
    list-style: none;
    margin: 1em 0 0;
    padding: var(--ismPadding20);
    line-height: 1;
	font-size: 30px;
}
#mobile-access ul ::marker {
	content: '';
}
#mobile-access li {
    margin-bottom: 1.5em;
}
#mobile-access a {
    font-weight: bold;
    text-transform: uppercase;
    color: #000;
}
#mobile-access ul ul {
    font-size: .8em;
    margin: 0;
}
#mobile-access ul ul li {
    margin: 1em 0 0;
}
.megamenu-mobile-outer {
	display: none;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
	overflow-y: scroll;
    padding: var(--ismPadding20);
	background-color: #FFF;
	z-index: 2;
}
.masthead_dark_background .megamenu-mobile-outer {
    border-top-color: #FFF;
	background-color: #000;
	color: #FFF;
}
#mobile-megamenu-close-wrapper {
    margin-top: 1rem;
}
#mobile-megamenu-close {
	display: flex;
	gap: .5em;
	align-items: center;
}
#mobile-megamenu-close:before {
    content: '\e902';
    font-family: 'ISM Icons';
    font-size: .6em;	
}

@media only screen and (max-width:700px) {
	#access {
		display: none;
	}
	a#menu-open,
	#mobile-nav {
    	display: block;
	}
}


/* =Content
-------------------------------------------------------------- */

.sticky {
}
.entry-meta {
	clear: both;
	display: block;
}
.single-author .entry-meta .byline {
	display: none;
}
#content nav#nav-below {
    width: calc(100% - var(--ismPadding60));
    max-width: calc(1300px - var(--ismPadding60));
    margin: 4em auto;
	display: block;
	overflow: hidden;
	font-size: var(--ismFont16);
}
#content nav#nav-below a {
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    display: inline-flex;
    gap: 0.25em;
    align-items: center;
}
#content nav#nav-below a span {
    display: block;
    margin-top: -0.25em;
}
#content nav#nav-below .nav-previous {
    float: left;
    width: 50%;
    padding-right: var(--ismPadding30);
}
#content nav#nav-below .nav-next {
	float: right;
	text-align: right;
	width: 50%;
    padding-left: var(--ismPadding30);
}
#content #nav-above {
	display: none;
}
.paged #content #nav-above,
.single #content #nav-above {
	display: block;
}
p.assistive-text {
	margin: 0 0 1em;
}
.page-link {
	clear: both;
	margin: 0 0 1em;
}
.page .edit-link {
	clear: both;
	display: block;
}

/* 404 page */
.error404 .widget {
	float: left;
	width: 33%;
}
.error404 .widget .widgettitle,
.error404 .widget ul {
	margin-right: 1em;
}
.error404 .widget_tag_cloud {
	clear: both;
	float: none;
	width: 100%;
}

/* Notices */
.post .notice,
.error404 #searchform {
	background: #eee;
	display: block;
	padding: 1em;
}

/* Image Attachments */
.image-attachment div.entry-meta {
	float: left;
}
.image-attachment nav {
	float: right;
	margin: 0 0 1em 0;
}
.image-attachment .entry-content {
	clear: both;
}
.image-attachment .entry-content .entry-attachment {
	background: #eee;
	margin: 0 0 1em;
	padding: 1em;
	text-align: center;
}
.image-attachment .entry-content .attachment {
	display: block;
	margin: 0 auto;
	text-align: center;
}

/* Aside Posts */
.format-aside .entry-header {
	display: none;
}
.single .format-aside .entry-header {
	display: block;
}
.format-aside .entry-content,
.format-aside .entry-summary {
	padding-top: 1em;
}
.single .format-aside .entry-content,
.single .format-aside .entry-summary {
	padding-top: 0;
}

/* Gallery Posts */
.format-gallery .gallery-thumb {
	float: left;
	margin: 0 1em 0 0;
}

/* Image Posts */
.format-image .entry-header {
	display: none;
}
.single .format-image .entry-header {
	display: block;
}
.format-image .entry-content,
.format-image .entry-summary {
	padding-top: 1em;
}
.single .format-image .entry-content,
.single .format-image .entry-summary {
	padding-top: 0;
}

/* =Images
-------------------------------------------------------------- */

a img {
	border: none;
}
p img {
	margin-bottom: 0.5em; /* a small bottom margin prevents content floating under images */
}
/*
Resize images to fit the main content area.
- Applies only to images uploaded via WordPress by targeting size-* classes.
- Other images will be left alone. Use "size-auto" class to apply to other images.
*/
img.size-auto,
img.size-full,
img.size-large,
img.size-medium,
.attachment img,
.widget-area img,
.wp-caption {
	max-width: 100%; /* When images are too wide for containing element, force them to fit. */
	height: auto; /* Override height to match resized width for correct aspect ratio. */
}
img.alignleft {
	margin-right: 1em;
}
img.alignright {
	margin-left: 1em;
}
.wp-caption {
	padding: .5em;
	text-align: center;
}
.wp-caption img {
	margin: .25em;
}
.wp-caption .wp-caption-text {
	margin: .5em;
}
.gallery-caption {
}
.wp-smiley {
	margin: 0;
}

/* =Comments
-------------------------------------------------------------- */

article.comment {
	display: block;
}
#respond input[type=text] {
	display: block;
	width: 60%;
}
#respond textarea {
	display: block;
	margin: 0 0 1em;
	width: 80%;
}
#respond .form-allowed-tags {
	clear: both;
	width: 80%;
}
#respond .form-allowed-tags code {
	display: block;
}

/* =Widgets
-------------------------------------------------------------- */

.widget {
	display: block;
}
.widget-area .widget_search {
	overflow: hidden;
}
.widget-area .widget_search input {
	float: left;
}

/* =Footer
-------------------------------------------------------------- */

#colophon {
	margin-top: auto;
	clear: both;
	display: block;
	width: 100%;
	padding: var(--ismPadding120) var(--ismPadding20) var(--ismPadding20);
	color: #FFF;
	background-color: #000;
	font-size: var(--ismFont20);
}
#colophon a {
	color: #FFF;
	text-decoration: none;
}
#colophon h6 {
    margin: 0 0 var(--ismPadding30);
}
#footer-columns {
    display: flex;
    max-width: 1300px;
    margin: 0 auto;
	gap: var(--ismPadding80);
}
.footer-column {
    width: calc(100% / 3);
}
#footer-address-bar {
	margin-top: var(--ismPadding100);
	display: flex;
	justify-content: center;
	font-size: var(--ismFont16);
	gap: 1em;
}
#footer-address-bar ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
}
#footer-address-bar ul li {
    margin-left: 1.25em;
	margin-bottom: 0;
}
#footer-address-bar ul li:first-child {
    margin-left: 0;
}
#footer-address-bar ul li:before {
	content: '|';
    margin-right: 1.25em;
}
#footer-address-bar ul li:first-child:before {
	display: none;
}
#footer-pop-up-wrapper {	
    position: fixed;
    bottom: 20px;
    left: 20px;
    z-index: 1000;
}
#footer-pop-up-outer {
	display: none;
    background-color: #FFF;
    padding: 20px;
    border-radius: 4px;
    width: 280px;
    border: solid 1px #000;
    box-shadow: 0 10px 10px rgba(0,0,0,.5);
    position: absolute;
    left: 0;
    bottom: 80px;
}
#footer-pop-up-inner h4 {
    margin: 0 0 1em;
    font-size: 1.25rem;
    text-align: center;
}
#pop-up-label {
    position: absolute;
    bottom: 75px;
    left: 0;
    padding: 0px;
    background: #FFF;
    border-radius: 4px;
    border: #000 solid 1px;
}
#pop-up-label:before {
    content: '';
    position: absolute;
    border-style: solid;
    border-width: 10px 10px 0;
    border-color: #000 transparent;
    display: block;
    width: 0;
    z-index: 0;
    bottom: -11px;
    left: 20px;
}
#pop-up-label:after {
    content: '';
    position: absolute;
    border-style: solid;
    border-width: 10px 10px 0;
    border-color: #FFFFFF transparent;
    display: block;
    width: 0;
    z-index: 1;
    bottom: -10px;
    left: 20px;
}
#pop-up-label-inner {
    font-size: 14px;
    padding: 15px 15px;
    font-weight: normal;
    white-space: nowrap;
}
#pop-trigger-button {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #FFF;
    color: #000;
    width: 60px;
    height: 60px;
    border-radius: 100%;
    cursor: pointer;
    box-shadow: 0 3px 10px rgba(0,0,0,.35);
    transition: background-color .4s, transform .25s;
}
#pop-trigger-closed {
    height: 100%;
    width: 100%;
    padding: 18px 13px 0px;
}
#pop-trigger-open {
    display: none;
	font-family: 'ISM Icons';
    font-size: 20px;
}

@media only screen and (max-width:700px) {
	#colophon {
		padding-bottom: var(--ismPadding40);
	}
	#footer-columns {
		justify-content: center;
		flex-direction: column;
	}
	.footer-column {
		width: 90%;
		max-width: 400px;
		margin: 0 auto;
	}
}


/* =Forms
-------------------------------------------------------------- */

#searchform label {
	display: none;
}
#searchform input#s {
	width: 60%;
}
input[type=text],
input#s {
	margin: 0 1em 0 0;
	width: 60%;
}
textarea {
	width: 80%;
}
textarea,
input[type="text"],
input[type="email"],
input[type="button"],
input[type="submit"] {
     -webkit-appearance: none;
}

/* Class for labelling required form items */
.required {
	color: #ec1f28;
}

span.select {
	display: block;
	height: 40px;
	min-width: 100%;
	position: relative;
	vertical-align: top;
	margin-right: 40px;
}
span.select select {
	position: absolute;
	left: -10000px;
}
span.select-replace {
	border-radius: 4px;
	color: #FFF;
	display: block;
	width: 100%;
	position: absolute;
	top: 0px;
	left: 0px;
	box-sizing: border-box;
	outline: none;
	vertical-align: middle;
	zoom: 1;
	height: 40px;
	line-height: 40px;
	font-size: 16px;
	padding-left: 10px;
	background-color: #FFF;
	border: solid 2px #000;
}
span.select-replace .toggle {
	position: absolute;
	right: 0px;
	top: 0px;
	bottom: 0px;
	background: #FFF;
}
span.select-replace .toggle:before {
	content: '';
	display: block;
	position: absolute;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 6px 4px 0 4px;
	border-color: #FFF transparent transparent transparent;
	top: 20px;
	right: 15px;
}
span.select-replace .toggle:after {
	content: '';
	display: block;
	position: absolute;
	width: 0px;
	height: 0px;
	border-style: solid;
	border-width: 0 4px 6px 4px;
	border-color: transparent transparent #FFF transparent;
	top: 10px;
	right: 15px;
}
span.select-replace-label {
	display: block;
	height: 100%;
	padding-right: 40px;
	overflow: hidden;
}
span.drop-replace {
	text-align: left;
	min-width: 100%;
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	background: #FFF;
	z-index: 5;
	max-height: 210px;
	overflow-y: scroll;
	border-radius: 4px;
	color: #000;
	border: solid 2px #000;
}
span.option-replace {
	display: block;
	padding: 0 10px;
	height: 30px;
	line-height: 30px;
	white-space: nowrap;
	cursor: pointer;
}
span.option-replace.selected {
	background: #ec1f28;
	color: #000;
}
span.option-replace:hover {
	background: #e6e6e6;
	color: #000;
}
span.checkbox {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	display: inline-block;
	position: relative;
	width: 30px;
	height: 30px;
	margin: 5px 0;
	vertical-align: middle;
}
span.checkbox-replace {
	display: block;
	position: absolute;
	text-align: center;
	top: 0px;
	left: 0px;
	z-index: 2;
	width: 30px;
	height: 30px;
	line-height: 26px;
	cursor: pointer;
	border: solid 8px #0055b7;
	border-radius: 4px;
	background-color: #0055b7;
}
span.checkbox-replace.checked {
	background-color: #fff;
}
span.checkbox input {
	position: absolute;
	z-index: 4;
	width: 30px;
	height: 30px;
	margin: 0;
	opacity: 0;
}

/* =Table of Contents
-------------------------------------------------------------- */

.wp-block-group.toc-layout-outer {
    width: calc(100% - var(--ismPadding60));
    max-width: 1300px;
    margin: var(--ismPadding80) auto;
}
.wp-block-group.toc-layout-outer > .wp-block-group__inner-container {
    display: flex;
    gap: var(--ismPadding60);
}
.wp-block-group.toc-layout-list {
    position: relative;
    width: 300px;
}
.wp-block-group.toc-layout-list > .wp-block-group__inner-container {
    position: sticky;
    top: calc(var(--ismPadding120) + var(--ismPadding60));
    left: 0;
    width: 300px;
    border: solid 1px;
	padding: var(--ismPadding20);
}
.infobar .wp-block-group.toc-layout-list > .wp-block-group__inner-container {
	top: calc(var(--ismPadding120) + var(--ismPadding60) + 40px);
}
.admin-bar .wp-block-group.toc-layout-list > .wp-block-group__inner-container {
	top: calc(var(--ismPadding120) + var(--ismPadding60) + 32px);
}
.admin-bar.infobar .wp-block-group.toc-layout-list > .wp-block-group__inner-container {
	top: calc(var(--ismPadding120) + var(--ismPadding60) + 73px);
}
.wp-block-group.toc-layout-list h2#toc-heading {
    margin: 0;
    font-size: var(--ismFont18);
    padding-bottom: var(--ismPadding10);
    border-bottom: solid 1px;
    display: flex;
    gap: .5em;
    align-items: center;
	transition: padding-bottom ease .25s;
}
.wp-block-group.toc-layout-list h2#toc-heading.closed {
    padding-bottom: 0;
	border-bottom: 0;
}
.wp-block-group.toc-layout-list h2#toc-heading:after {
	font-family: 'ISM Icons';
	content: '\e906';
	margin-left: auto;
	font-size: .75em;
	transform: rotate(0deg);
	transition: transform ease .25s;
}
.wp-block-group.toc-layout-list h2#toc-heading.closed:after {
	transform: rotate(540deg);
}
.wp-block-group.toc-layout-list ul {
    list-style: none;
    margin: 0;
}
ul#toc-list {
    padding: 0;
    font-size: var(--ismFont14);
}
ul#toc-list > li:first-child {
	margin-top: var(--ismPadding30);
}
ul#toc-list li {
    line-height: 1.45;
    margin: var(--ismPadding10) 0 0;
}
ul#toc-list a {
	text-decoration: none;
}
.wp-block-group.toc-layout-list ul ul {
    padding-left: 1em;
    border-left: 1px solid;
    margin-left: .25em;
}
.wp-block-group.toc-layout-content > .wp-block-group__inner-container *:first-child {
    margin-top: 0;
}
.wp-block-group.toc-layout-content > .wp-block-group__inner-container *:last-child {
    margin-bottom: 0;
}

@media only screen and (max-width:700px) {
	.wp-block-group.toc-layout-outer > .wp-block-group__inner-container {
		width: auto;
		display: block;
	}
	.wp-block-group.toc-layout-list {
		width: auto;
		margin-bottom: var(--ismPadding60);
	}
	.wp-block-group.toc-layout-list > .wp-block-group__inner-container {
		position: static;
		width: auto;
	}
}
